package com.innodata.riskEngine.service;

import com.innodata.riskEngine.vo.LoadTestReq;

import java.util.List;

/**
 * @Author liboshuai
 * @Date 2023/11/2 17:15
 */
public interface LoadTesterService {
    void loadTest(LoadTestReq loadTestReq);

    /**
     * 从指定的 Kafka 主题中消费最后 N 条消息。
     *
     * 这个方法首先获取每个分区的最新 offset，然后设置消费的起始位置为 "最新的 offset 减去 N"。
     * 然后，它使用一个 KafkaConsumer 来消费来自这些分区的消息，直到消费了 N 条消息。
     * 如果在任何分区上达到最早的消息，它将只消费那些可用的消息。
     *
     * @param topicName 要消费消息的 Kafka 主题的名称。
     * @param offset 要消费的最后的消息数量。
     */
    List<String> tailKafkaTopic(String topicName, long offset);
}
